package com.ruoyi.jjkc.jjkcsbzn.mapper;

import java.util.List;
import com.ruoyi.jjkc.jjkcsbzn.domain.Jjkcsbzn;
import com.ruoyi.jjkc.jjkcsbzn.domain.JjkcsbznFj;

/**
 * 加计扣除申报指南Mapper接口
 *
 * @author huacai
 * @date 2024-12-28
 */
public interface JjkcsbznMapper
{
    /**
     * 查询加计扣除申报指南
     *
     * @param jjkcsbznId 加计扣除申报指南主键
     * @return 加计扣除申报指南
     */
    public Jjkcsbzn selectJjkcsbznByJjkcsbznId(String jjkcsbznId);

    /**
     * 查询加计扣除申报指南列表
     *
     * @param jjkcsbzn 加计扣除申报指南
     * @return 加计扣除申报指南集合
     */
    public List<Jjkcsbzn> selectJjkcsbznList(Jjkcsbzn jjkcsbzn);

    /**
     * 新增加计扣除申报指南
     *
     * @param jjkcsbzn 加计扣除申报指南
     * @return 结果
     */
    public int insertJjkcsbzn(Jjkcsbzn jjkcsbzn);

    /**
     * 修改加计扣除申报指南
     *
     * @param jjkcsbzn 加计扣除申报指南
     * @return 结果
     */
    public int updateJjkcsbzn(Jjkcsbzn jjkcsbzn);

    /**
     * 删除加计扣除申报指南
     *
     * @param jjkcsbznId 加计扣除申报指南主键
     * @return 结果
     */
    public int deleteJjkcsbznByJjkcsbznId(String jjkcsbznId);

    /**
     * 批量删除加计扣除申报指南
     *
     * @param jjkcsbznIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteJjkcsbznByJjkcsbznIds(String[] jjkcsbznIds);

    /**
     * 批量删除加计扣除申报指南附件
     *
     * @param jjkcsbznIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteJjkcsbznFjByJjkcsbznIds(String[] jjkcsbznIds);

    /**
     * 批量新增加计扣除申报指南附件
     *
     * @param jjkcsbznFjList 加计扣除申报指南附件列表
     * @return 结果
     */
    public int batchJjkcsbznFj(List<JjkcsbznFj> jjkcsbznFjList);


    /**
     * 通过加计扣除申报指南主键删除加计扣除申报指南附件信息
     *
     * @param jjkcsbznId 加计扣除申报指南ID
     * @return 结果
     */
    public int deleteJjkcsbznFjByJjkcsbznId(String jjkcsbznId);

    /**
     * 新增附件
     * @param jjkcsbznFj
     * @return
     */
    int insertJjkcsbznFjById(JjkcsbznFj jjkcsbznFj);

    /**
     * 根据ID查询附件列表
     * @param jjkcsbznFj
     * @return
     */
    List<JjkcsbznFj> selectJjkcsbznFjList(JjkcsbznFj jjkcsbznFj);

    /**
     * 删除加计扣除申报指南附件
     * @param fjIds
     * @return
     */
    int deleteJjkcsbznFjByFjIds(Integer[] fjIds);
}
